%
%   This file prints out the font samples at the end of the AmigaTeX
%   manual.
%
\tracinglostchars=0
\tolerance=1000
\raggedbottom
\nopagenumbers
\parindent=0pt
\newlinechar=`@
\hyphenpenalty=200
\doublehyphendemerits=30000

\newcount\m \newcount\n \newcount\p \newdimen\dim
\chardef\other=12

\def\today{\ifcase\month\or
  January\or February\or March\or April\or May\or June\or
  July\or August\or September\or October\or November\or December\fi
  \space\number\day, \number\year}
\def\hours{\n=\time \divide\n 60
  \m=-\n \multiply\m 60 \advance\m \time
  \twodigits\n\twodigits\m}
\def\twodigits#1{\ifnum #1<10 0\fi \number#1}

\def\setbaselineskip{\setbox0=\hbox{\n=0
\loop\char\n \ifnum \n<255 \advance\n 1 \repeat}
\baselineskip=6pt \advance\baselineskip\ht0 \advance\baselineskip\dp0 }

\def\setchar#1{{\escapechar-1\message{\string#1 character = }%
  \def\do##1{\catcode`##1=\other}\dospecials
  \read-1 to\next
  \expandafter\finsetchar\next\next#1}}
\def\finsetchar#1#2\next#3{\global\chardef#3=`#1
  \ifnum #3=`\# \global\chardef#3=#2 \fi}
\def\promptthree{\setchar\background
  \setchar\starting \setchar\ending}

\def\init#1{\global\def\fontname{#1}
  \font\testfont=\fontname
  \goodbreak
  \leftline{\sevenrm Test of \fontname\unskip\ on \today\ at \hours}
  \medskip
  \testfont \setbaselineskip
  \ifdim\fontdimen6\testfont<10pt \rightskip=0pt plus 20pt
  \else\rightskip=0pt plus 2em \fi
  \spaceskip=\fontdimen2\testfont % space between words (\raggedright)
  \xspaceskip=\fontdimen2\testfont \advance\xspaceskip by\fontdimen7\testfont}

\def\mixture{\promptthree \domix\mixpattern}
\def\alternation{\promptthree \domix\altpattern}
\def\mixpattern{\0\1\0\0\1\1\0\0\0\1\1\1\0\1}
\def\altpattern{\0\1\0\1\0\1\0\1\0\1\0\1\0\1\0\1\0}
\def\domix#1{\par\chardef\0=\background \n=\starting
  \loop \chardef\1=\n #1\endgraf
  \ifnum \n<\ending \advance\n 1 \repeat}

\def\!{\discretionary{\background}{\background}{\background}}
\def\series{\promptthree \!\doseries\starting\ending\par}
\def\doseries#1#2{\n=#1\loop\char\n\!\ifnum\n<#2\advance\n 1 \repeat}
\def\complower{\!\doseries{`a}{`z}\doseries{'31}{'34}\par}
\def\compupper{\!\doseries{`A}{`Z}\doseries{'35}{'37}\par}
\def\compdigs{\!\doseries{`0}{`9}\par}
\def\alphabet{\setchar\background\complower}
\def\ALPHABET{\setchar\background\compupper}

\def\lowers{\docomprehensive\complower{`a}{`z}{'31}{'34}}
\def\uppers{\docomprehensive\compupper{`A}{`Z}{'35}{'37}}
\def\digits{\docomprehensive\compdigs{`0}{`4}{`5}{`9}}
\def\docomprehensive#1#2#3#4#5{\par\chardef\background=#2
  \loop{#1} \ifnum\background<#3\m=\background\advance\m 1
  \chardef\background=\m \repeat \chardef\background=#4
  \loop{#1} \ifnum\background<#5\m=\background\advance\m 1
  \chardef\background=\m \repeat}

\def\names{ {\AA}ngel\aa\ Beatrice Claire
  Diana \'Erica Fran\c{c}oise Ginette H\'el\`ene Iris
  Jackie K\=aren {\L}au\.ra Mar{\'\i}a N\H{a}ta{\l}{\u\i}e Octave
  Pauline Qu\^eneau Roxanne Sabine T\~a{\'\j}a Ur\v{s}ula
  Vivian Wendy Xanthippe Yv{\o}nne Z\"azilie\par}
\def\punct{\par\dopunct{min}\dopunct{pig}\dopunct{hid}
  \dopunct{HIE}\dopunct{TIP}\dopunct{fluff}
  \$1,234.56 + 7/8 = 9\% @ \#0\par}
\def\dopunct#1{#1,\ #1:\ #1;\ `#1'\ ?`#1?\ !`#1!\ (#1)\ [#1]\ #1*\ #1.\par}

\def\bigtest{\sample
  hamburgefonstiv HAMBURGEFONSTIV\par
  \names \punct \lowers \uppers \digits}

\def\math{\textfont1=\testfont \skewchar\testfont='177
 \mathchardef\Gamma="100 \mathchardef\Delta="101
 \mathchardef\Theta="102 \mathchardef\Lambda="103 \mathchardef\Xi="104
 \mathchardef\Pi="105 \mathchardef\Sigma="106 \mathchardef\Upsilon="107
 \mathchardef\Phi="108 \mathchardef\Psi="109 \mathchardef\Omega="10A
 \def\trial{$\\A \\B \\C \\D \\E \\F \\G \\H \\I \\J \\K \\L \\M \\N \\O
  \\P \\Q \\R \\S \\T \\U \\V \\W \\X \\Y \\Z \\a \\b \\c \\d \\e \\f \\g
  \\h \\\i \\\j \\k \\l \\m \\n \\o \\p \\q \\r \\s \\t \\u \\v \\w \\x \\y
  \\z \\\alpha \\\beta \\\gamma \\\delta \\\epsilon \\\zeta \\\eta \\\theta
  \\\iota \\\kappa \\\lambda \\\mu \\\nu \\\xi \\\pi \\\rho \\\sigma \\\tau
  \\\upsilon \\\phi \\\chi \\\psi \\\omega \\\vartheta \\\varpi \\\varphi
  \\\Gamma \\\Delta \\\Theta \\\Lambda \\\Xi \\\Pi \\\Sigma \\\Upsilon
  \\\Phi \\\Psi \\\Omega \\\partial \\\ell \\\wp$\par}
 \def\i{i} \def\j{j}
 \def\\##1{|##1|+}\trial
 \def\\##1{##1_2+}\trial
 \def\\##1{##1^2+}\trial
 \def\\##1{##1/2+}\trial
 \def\\##1{2/##1+}\trial
 \def\\##1{##1,{}+}\trial
 \def\\##1{d##1+}\trial
 \let\i=\imath \let\j=\jmath \def\\##1{\hat##1+}\trial}

\def\oct#1{\hbox{\rm\'{}\kern-.2em\it#1\/\kern.05em}} % octal constant
\def\hex#1{\hbox{\rm\H{}\tt#1}} % hexadecimal constant
\def\setdigs#1"#2{\gdef\h{#2}% \h=hex prefix; \0\1=corresponding octal
 \m=\n \divide\m by 64 \xdef\0{\the\m}%
 \multiply\m by-64 \advance\m by\n \divide\m by 8 \xdef\1{\the\m}}
\def\testrow{\setbox0=\hbox{\penalty 1\def\\{\char"\h}%
 \\0\\1\\2\\3\\4\\5\\6\\7\\8\\9\\A\\B\\C\\D\\E\\F%
 \global\p=\lastpenalty}} % \p=1 if none of the characters exist
\def\oddline{\cr
  \noalign{\nointerlineskip}
  \multispan{19}\hrulefill&
  \setbox0=\hbox{\lower 2.3pt\hbox{\hex{\h x}}}\smash{\box0}\cr
  \noalign{\nointerlineskip}}
\newif\ifskipping
\def\evenline{\loop\skippingfalse
 \ifnum\n<256 \m=\n \divide\m 16 \chardef\next=\m
 \expandafter\setdigs\meaning\next \testrow
 \ifnum\p=1 \skippingtrue \fi\fi
 \ifskipping \global\advance\n 16 \repeat
 \ifnum\n=256 \let\next=\endchart\else\let\next=\morechart\fi
 \next}
\def\morechart{\cr\noalign{\hrule\penalty5000}
 \chartline \oddline \m=\1 \advance\m 1 \xdef\1{\the\m}
 \chartline \evenline}
\def\chartline{&\oct{\0\1x}&&\:&&\:&&\:&&\:&&\:&&\:&&\:&&\:&&}
\def\chartstrut{\lower4.5pt\vbox to14pt{}}
\def\table{$$\global\n=0
  \halign to\hsize\bgroup
    \chartstrut##\tabskip0pt plus10pt&
    &\hfil##\hfil&\vrule##\cr
    \lower6.5pt\null
    &&&\oct0&&\oct1&&\oct2&&\oct3&&\oct4&&\oct5&&\oct6&&\oct7&\evenline}
\def\endchart{\cr\noalign{\hrule}
  \raise11.5pt\null&&&\hex 8&&\hex 9&&\hex A&&\hex B&
  &\hex C&&\hex D&&\hex E&&\hex F&\cr\egroup$$\par}
\def\:{\setbox0=\hbox{\char\n}%
  \ifdim\ht0>7.5pt\reposition
  \else\ifdim\dp0>2.5pt\reposition\fi\fi
  \box0\global\advance\n 1 }
\def\reposition{\setbox0=\vbox{\kern2pt\box0}\dim=\dp0
  \advance\dim 2pt \dp0=\dim}
\def\centerlargechars{
  \def\reposition{\setbox0=\hbox{$\vcenter{\kern2pt\box0\kern2pt}$}}}

\def\text{{\advance\baselineskip-4pt
\setbox0=\hbox{abcdefghijklmnopqrstuvwxyz}
\ifdim\hsize>2\wd0 \ifdim 15pc>2\wd0 \hsize=15pc \else \hsize=2\wd0 \fi\fi
On November 14, 1885, Senator \& Mrs.~Leland Stanford called
together at their San Francisco mansion the 24~prominent men who had
been chosen as the first trustees of The Leland Stanford Junior University.
They handed to the board the Founding Grant of the University, which they
had executed three days before. This document---with various amendments,
legislative acts, and court decrees---remains as the University's charter.
In bold, sweeping language it stipulates that the objectives of the University
are ``to qualify students for personal success and direct usefulness in life;
and to promote the publick welfare by exercising an influence in behalf of
humanity and civilization, teaching the blessings of liberty regulated by
law, and inculcating love and reverence for the great principles of
government as derived from the inalienable rights of man to life, liberty,
and the pursuit of happiness.'' \moretext
(!`THE DAZED BROWN FOX QUICKLY GAVE 12345--67890 JUMPS!)\par}}
\def\moretext{?`But aren't Kafka's Schlo{\ss} and {\AE}sop's {\OE}uvres
often na{\"\i}ve  vis-\`a-vis the d{\ae}monic ph{\oe}nix's official r\^ole
in fluffy souffl\'es? }
\def\omitaccents{\let\moretext=\relax}

\def\sample{\table\text}
%
%   Finally, the things we came here for.
%
\def\tab#1#2{\init{#1}\table #2\vfill\eject}
\def\sam#1#2{\init{#1}\sample #2\vfill\eject}
\def\note#1{\vskip\baselineskip{\rm #1}}
\nopagenumbers
\hoffset=0.5truein\hsize=6truein
%
\tab{circle10}{}
\tab{circlew10}{}
\sam{cmb10}{}
\tab{cmbsy10}{}
\sam{cmbx10}%
{\note{This font is available in sizes of 5, 6, 7, 8, 9, 10, and 12 points.}}
\sam{cmbxsl10}{}
\sam{cmbxti10}{}
\sam{cmcsc10}{}
\sam{cmdunh10}{}
\tab{cmex10}{}
\sam{cmff10}{}
\sam{cmfi10}{}
\sam{cmfib8}{}
\sam{cmitt10}{}
\tab{cmmi10}%
{\note{This font is available in sizes of 5, 6, 7, 8, 9, 10, and 12 points.}}
\tab{cmmib10}{}
\sam{cmr10}%
{\note{This font is available in sizes of 5, 6, 7, 8, 9, 10, 12, and 17 points.}}
\sam{cmsl10}%
{\note{This font is available in sizes of 8, 9, 10, and 12 points.}}
\sam{cmsltt10}{}
\sam{cmss10}%
{\note{This font is available in sizes of 8, 9, 10, 12, and 17 points.}}
\sam{cmssbx10}{}
\sam{cmssdc10}{}
\sam{cmssi10}%
{\note{This font is available in sizes of 8, 9, 10, 12, and 17 points.}}
\sam{cmssq8}{}
\sam{cmssqi8}{}
\tab{cmsy10}%
{\note{This font is available in sizes of 5, 6, 7, 8, 9, and 10 points.}}
\sam{cmti10}%
{\note{This font is available in sizes of 7, 8, 9, 10, and 12 points.}}
\sam{cmtt10}%
{\note{This font is available in sizes of 8, 9, 10, and 12 points.}}
\sam{cmu10}{}
\sam{cmvtt10}{}
\tab{lasy10}%
{\note{This font is available in sizes of 5, 6, 7, 8, 9, and 10 points.}}
\tab{lasyb10}{}
\tab{line10}{}
\tab{linew10}{}
